package member.service;

import member.domain.Member;
import com.baomidou.mybatisplus.extension.service.IService;
import member.vo.*;
import com.feign.utils.R;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
 * @author panghu
 * @description 针对表【ums_member(会员)】的数据库操作Service
 * @createDate 2023-03-04 21:04:05
 */
public interface MemberService extends IService<Member> {

    Member login(MemberUserLoginVo vo);

    LoginResVo loginTemp(LoginVo vo, HttpServletRequest request);

    R register(RegisterVo registerVo);

    UserInfoVo getUserInfo(HttpServletRequest request);

    void logout(HttpServletRequest request);

    /**
     * 获取当前登录人的收获地址
     *
     * @param request
     * @return
     */
    List<UserAddressVo> findUserAddressList(HttpServletRequest request);

    /**
     * 展示当前登录人的信息
     *
     * @return
     */
    MemberInfoVo getMemberInfoById(HttpServletRequest request);

    /**
     * 修改用户信息
     *
     * @param memberInfoVo
     */
    void updateMember(MemberInfoVo memberInfoVo);
}
